package com.ynny.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

@RequestMapping(value = "/springmvc")
@Controller
public class RequestMappingTestController {

    //RequestMapping   请求映射
    //它可以标记在方法上 也可以标记在类上
                        // 标记在类上 相当于对类的所有方法添加了这个路径 映射
    // value  请求的路径名称
    // method 请求的类型(方法 方式) ：GET   POST   PUT DELETE
    //        不写 默认所有的请求方法都可以处理
    // @GetMapping  @PostMapping   @PutMapping   @DeleteMapping

    //

    //SpringMVC的请求 层面 是方法层面的  一个方法可以处理一个请求
    //原生Servlet 层面 是类层面的 一个类里面的一个方法处理一个请求


//    @RequestMapping(
//            value = "/hello",
//            method = RequestMethod.GET)
    @GetMapping("/hello")
    @ResponseBody //响应体注解  告诉SpringMVC 不要解析视图名称 直接将返回值作为响应体返回给客户端
    public String hello(){
        System.out.println("hello");
        return "hello";
    }

    @RequestMapping(value = "/hi")
    public String hi(){
        System.out.println("hi");
        return "hi"; //默认返回视图文件 视图解析器会根据视图名称 去找到对应的页面文件
                     //前缀 + 视图名称 + 后缀
                    // /WEB-INF/ + hi + .jsp
    }
}
